#include <bits/stdc++.h>
using namespace std;
int n;
struct Gu {
  int id;
  string name;
  int a, b, c;
  bool Y;
  // Gu() : id(0), name(""), a(0), b(0), c(0), Y(true) {}
  // Gu(int id, string name, int a, int b, int c, bool yes)
  //     : id(id), name(name), a(b), b(b), c(c), Y(yes) {}
};

Gu gudong[1001110];

bool comid(const Gu &x, const Gu &y) { return x.id < y.id; }
bool coma(const Gu &x, const Gu &y) { return x.a < y.a; }
bool comb(const Gu &x, const Gu &y) { return x.b < y.b; }
bool comc(const Gu &x, const Gu &y) { return x.c < y.c; }

void judgea() {
  int L = 1, R = n;
  while (L < n) {
    if (gudong[R].a - gudong[L].a >= 100) {
      gudong[L].Y = false;
      L++;
    } else {
      break;
    }
  }
}

void judgeb() {
  int L = 1, R = n;
  while (L < n) {
    if (gudong[R].b - gudong[L].b >= 100) {
      gudong[L].Y = false;
      L++;
    } else {
      break;
    }
  }
}

void judgec() {
  int L = 1, R = n;
  while (L < n) {
    if (gudong[R].c - gudong[L].c >= 100) {
      gudong[L].Y = false;
      L++;
    } else {
      break;
    }
  }
}

int main() {

  cin >> n;
  for (int i = 1; i <= n; i++) {
    string name;
    int a, b, c;
    cin >> name >> a >> b >> c;
    // gudong[i].id = i;
    // gudong[i].name = name;

    // gudong[i].a = a;
    // gudong[i].b = b;
    // gudong[i].c = c;
    // gudong[i].Y = true;
    gudong[i] = Gu{i, name, a, b, c, true};
  }

  sort(gudong + 1, gudong + n + 1, coma);
  judgea();

  sort(gudong + 1, gudong + n + 1, comb);
  judgeb();

  sort(gudong + 1, gudong + n + 1, comc);
  judgec();

  sort(gudong + 1, gudong + n + 1, comid);

  bool flag = 0;
  for (int i = 1; i <= n; i++) {
    if (gudong[i].Y) {
      flag = 1;
      break;
    }
  }
  if (!flag) {
    cout << "There is no winner.";
    return 0;
  }

  cout << "Winning list:" << endl;
  for (int i = 1; i <= n; i++) {
    if (gudong[i].Y) {
      cout << gudong[i].name << endl;
    }
  }

  return 0;
}